Method and system for determining an optimum plan for retirement income

ABSTRACT

The method, system, and computer-readable medium generate and adjust retirement plans. Client information and projection parameters are received from a user and used to generate a first retirement plan. Default values for some information may be presented to verification based upon previously entered information. The first retirement plan is presented to the user simultaneously with a plurality of options to adjust the parameters, which are presented such that the user may adjust the parameters without obscuring the retirement plan information. Upon selection of an option by the user, the retirement plan is adjusted and presented in real-time, which may be implemented by the user&#39;s computer without communication with another computer. A reallocation option may be included to request quotes from additional parties, receive the quotes, and reallocate part or all of the value of a client asset to a different type of asset based upon the quotes.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.61/885,576, filed Oct. 2, 2013, the entirety of which is incorporated byreference herein.

TECHNICAL FIELD

The present disclosure generally relates to a system and a method formanaging and evaluating financial retirement portfolios to generateoptimum returns during a retiree's lifetime, along with investment rulesand strategies to manage retirement portfolios.

BACKGROUND

Many individuals begin planning for retirement well in advance. Suchplanning frequently includes planning for the financial impact of theelimination of employment income and the addition of income from othersources, such as pensions or Social Security benefits. This financialplanning also typically includes saving and investment decisions, aswell as estimates of income required or desired during retirement. Thedecision of when a person should retire is also a key factor inretirement planning. This decision is generally a function of at leastfour major factors: (1) the amount of income a person needs or desiresto draw in his retirement; (2) when that person will retire; (3) howmuch that person is able to save for retirement; and (4) how retirementfunds are invested. Individuals have no control over the performance offinancial markets, and the fourth factor is generally a hit-or-missestimate based on a person's relative propensity for risk or security inhis retirement investment portfolio. However, the myriad of investmentchoices and the relative safety or risk they present generally focus afinancial planner's efforts on this fourth factor, with little or noattention given to the effects of the first three factors over whichindividuals have significantly greater control.

Generally, a financial planner will start to formulate a retirement planwith a questionnaire that establishes narrow parameters for the firstthree factors. The planner then focuses on the fourth factor to developa financial retirement plan that serves the potential retiree'sresponses to the first three factors. Although even minor changes to anyone of the first three factors can materially affect the assumptionsinherent in the fourth factor, planners generally will not develop aplurality of plans that respond to those types of changes. When aplurality of plans are developed, they are limited to a few scenarios(e.g., three different retirement ages or high and low marketperformance levels).

Financial planners frequently utilize software tools to formulateretirement plans for their clients. As with other aspects of the typicalretirement planning process, these tools focus on the fourth majorretirement planning factor, namely, the mix of assets in a prospectiveretiree's account. Few, if any of the existing software tools facilitatechanges to the other major factors that may affect a retiree's income.Instead, these prior art planning tools will include static entry fieldsfor the retiree's desired income, projected retirement age, and currentsavings, which will then be used to devise a sampling of plans basedupon those static factors. If the client wishes to change any of thoseother factors, the planner will need to run separate scenarios, each ofwhich is based on different input factors. The client will then bepresented with a plethora of static projections and will have little orno opportunity to see how those projections may change with changes tothe other input factors. If the client requests additional informationon how a change (such as buying a vacation home) may impact theprojections, the financial planner must go through a time-consumingprocess of creating a new set of projections by entering the informationfor a new scenario into the software tool.

When financial planners attempt to develop more complex retirementplans, the time and effort required to produce new projections ofdifferent scenarios increases. For example, considering risk protectionmechanisms and factoring in regular withdrawals may require producingmultiple sets of projects for each scenario adjustment. Few existingsoftware tools allow a financial planner the flexibility to varymultiple primary and secondary parameters in response to a clientinquiry, and even those tools lack the capability to generate real-timeprojections or projection summaries to present to a client in responseto changes in the parameters. The ability to generate and display “whatif” scenarios in real-time for a sliding scale of changes andassumptions (e.g., postponing retirement by various lengths of time,increasing savings by various amounts prior to retirement, or adjustinglife expectancy) is not available in existing retirement planning tools.

SUMMARY

A method, system, and computer-readable medium storing instructions forgenerating and adjusting retirement plans for a client are disclosedherein. One embodiment comprises a computer-implemented methodincluding: receiving client information (including information relatedto at least a plurality of parameters for projecting future valuesassociated with the retirement plans); determining a first retirementplan based upon the received client information; presenting informationregarding the first retirement plan to a user simultaneously with theinformation regarding the first retirement plan; presenting a pluralityof options to change the parameters; receiving an indication of aparameter change (including a selection of at least one of the pluralityof options to change the parameters); determining a second retirementplan based upon the client information and the indication of theparameter change; and presenting information regarding the secondretirement plan to the user simultaneously with a second plurality ofoptions to change the parameters. The pluralities of options arepresented to the user simultaneously with the information regarding theretirement plans to facilitate adjustment of the retirement planparameters by the user in real-time (i.e., without a noticeable delaybetween the selection by the user of an option to adjust a parameter andthe presentation of the second retirement plan).

The information regarding the retirement plans may include a projectionof at least one of the following: retirement income from one or moresources during retirement, expenses during retirement, retirement age,rate of return on investments, rate of return on other assets, length ofclient life, healthcare expenses, recurring expenses, nonrecurringexpenses. The client information may include a first item of clientinformation and a second item of client information, such that thesecond item is prepopulated with a default value based at least in partupon the received value of the first item. In some embodiments, this maybe implemented using default values for parameters, such as an expectedrate of return on equity securities in an investment account.

In some embodiments, determining the second retirement plan may includedetermining the second retirement plan using a computing device operatedby the user without requesting or receiving additional information fromany additional computing devices communicatively connected to thecomputing device after receiving the indication of the parameter change.By not requesting or receiving additional information from anothercomputing device (e.g., a networked server), the second retirement planmay be determined in real-time.

In further embodiments, the plurality of options to change theparameters may include a stress test option. Selection of the stresstest option may cause the second retirement plan to adjust one or moreof the parameters to simulate one or more of the following marketevents: a single-year reduction in the rate of return on at least oneasset, a multi-year reduction in the rate of return on at least oneasset, a single-year reduction in the value of at least one asset, amulti-year reduction in the value of at least one asset, or a multi-yearseries of changes to the rate of return that includes at least oneincrease in the value of at least one asset and at least one decrease inthe value of at least one asset. Additional options to change theparameters may further include an option to adjust the timing of theoccurrence of the one or more market events. The plurality of optionsmay also include a drawdown option that, when selected, causes thesecond retirement plan to include a sufficient withdrawal of an asset ineach period following the client's retirement to meet the client'sretirement income goals in each of one or more periods following theclient's retirement until the asset is depleted. The plurality ofoptions may also include at least one optimization option associatedwith one or more of the plurality of parameters that, when selected,causes an adjustment to the associated one or more parameters in thesecond retirement plan such that the difference between the client'sretirement income goal and projected retirement income is minimized.Additional or alternative options to change the parameters may beincluded in various embodiments.

In still further embodiments, the indication of the parameter change mayinclude a selection of a reallocation option to reallocate part or allof at least one asset of the assets of the client to a different type ofasset in the second retirement plan. For example, the indication of theparameter change may include a selection of an option to reallocatefunds from an investment account to a variable annuity. Additionally,the reallocation option may include a selection to reallocate part orall of the at least one asset of the client to an annuity, in which casethe following actions may occur: a request for one or more quotes forthe annuity may be transmitted to one or more parties; one or morequotes from the one or more parties may be received; and the secondretirement plan may be determined based at least in part upon thereceived one or more quotes from the one or more parties.

Another embodiment comprises a computer system including one or moreprocessors and a program memory storing instructions that when executedby the one or more processors cause the computer system to: receiveclient information (including information related to at least aplurality of parameters for projecting future values associated with theretirement plans); determine a first retirement plan based upon thereceived client information; present information regarding the firstretirement plan to a user simultaneously with the information regardingthe first retirement plan; present a plurality of options to change theparameters; receive an indication of a parameter change (including aselection of at least one of the plurality of options to change theparameters); determine a second retirement plan based upon the clientinformation and the indication of the parameter change; and presentinformation regarding the second retirement plan to the usersimultaneously with a second plurality of options to change theparameters. Yet another embodiment comprises a tangible, non-transitorycomputer-readable medium storing instructions that when executed by oneor more processors of a computer system cause the computer system to:receive client information (including information related to at least aplurality of parameters for projecting future values associated with theretirement plans); determine a first retirement plan based upon thereceived client information; present information regarding the firstretirement plan to a user simultaneously with the information regardingthe first retirement plan; present a plurality of options to change theparameters; receive an indication of a parameter change (including aselection of at least one of the plurality of options to change theparameters); determine a second retirement plan based upon the clientinformation and the indication of the parameter change; and presentinformation regarding the second retirement plan to the usersimultaneously with a second plurality of options to change theparameters.

BRIEF DESCRIPTION OF THE DRAWINGS

The figures described below depict various aspects of the applications,methods, and systems disclosed herein. It should be understood that eachfigure depicts an embodiment of a particular aspect of the disclosedapplications, systems and methods, and that each of the figures isintended to accord with a possible embodiment thereof. Furthermore,wherever possible, the following description refers to the referencenumerals included in the following figures, in which features depictedin multiple figures are designated with consistent reference numerals.

FIGS. 1A-C illustrate screen shots of exemplary retirement plans for aclient;

FIG. 2 illustrates a flow diagram of an exemplary retirement plangeneration and adjustment method;

FIG. 3 illustrates a flow diagram of an exemplary data entry method forprepopulating default values for client information and parameters basedupon frequent responses;

FIG. 4 illustrates a screenshot of an exemplary embodiment of a form forentering information regarding a custom goal;

FIG. 5 illustrates a flow chart of an exemplary retirement plandetermination and adjustment method for determining a retirement plan,receiving adjustments to parameters, and determining and presenting anew retirement plan;

FIGS. 6A-I illustrate screenshots of an exemplary presentation of aretirement plan, showing the presentation and selection of options toadjust the parameters by a user;

FIG. 7 illustrates a flow chart of an exemplary asset reallocationmethod for reallocating part or all of an asset to a different type ofasset;

FIG. 8A-C illustrate screenshots of an exemplary presentation of aretirement plan, showing the reallocation of part or all of an asset;and

FIG. 9 illustrates a retirement plan generation and optimization systemfor implementing the methods as described herein.

DETAILED DESCRIPTION

Although the following text sets forth a detailed description ofnumerous different embodiments, it should be understood that the legalscope of the invention is defined by the words of the claims set forthat the end of this patent. The detailed description is to be construedas exemplary only and does not describe every possible embodiment, asdescribing every possible embodiment would be impractical, if notimpossible. One could implement numerous alternate embodiments, usingeither current technology or technology developed after the filing dateof this patent, which would still fall within the scope of the claims.

It should also be understood that, unless a term is expressly defined inthis patent using the sentence “As used herein, the term ‘_(——————)’ ishereby defined to mean . . . ” or a similar sentence, there is no intentto limit the meaning of that term, either expressly or by implication,beyond its plain or ordinary meaning, and such term should not beinterpreted to be limited in scope based on any statement made in anysection of this patent (other than the language of the claims). To theextent that any term recited in the claims at the end of this patent isreferred to in this patent in a manner consistent with a single meaning,that is done for sake of clarity only so as to not confuse the reader,and it is not intended that such claim term be limited, by implicationor otherwise, to that single meaning. Finally, unless a claim element isdefined by reciting the word “means” and a function without the recitalof any structure, it is not intended that the scope of any claim elementbe interpreted based on the application of 35 U.S.C. §112(f).

FIGS. 1A-1C illustrate screen shots of an exemplary retirement plan fora client. The retirement plan incorporates a plurality of projectionsregarding future values related to the client's income, expenses,assets, or liabilities during retirement. The projections may begin withcurrent values of assets (e.g., retirement accounts) or estimates offuture income sources (e.g., pensions or Social Security). Theprojections may then apply a number of assumptions regarding rates ofreturn, inflation, taxes, years until retirement, or other similarparameters to determine projected values for the client's assets andincome during retirement. The rate of return, retirement age, andwithdrawals from assets are of particular importance in determiningwhether the retirement plan will meet the client's retirement incomegoals. In some embodiments, the retirement plan may include projectionsbased upon parameters associated with one or more of the following:retirement income from one or more sources during retirement, expensesduring retirement, retirement age, rate of return on investments, rateof return on other assets, length of client life, healthcare expenses,recurring expenses, nonrecurring expenses. In some embodiments, theretirement plan may include an income stability ratio as a measure ofvolatility in the projections based upon market risk. The incomestability ratio is a ratio of the product of the ratio of projectedprotected income to projected total income and the ratio of projectednet income to the retirement income goal in each year, and it may beaveraged over the retirement period.

FIG. 1A illustrates a tabular summary of a retirement plan, showing cashflows from a plurality of income sources at key years during theclient's retirement period. The tabular block 102 contains projectedvalues for income sources, including withdrawals from assets. Thetabular block 102 also includes information regarding projected taxes,net income, and the client's inflation-adjusted retirement income goals.Based upon this information, the surplus or shortfall in each year maybe projected and presented within the tabular block 102. Additionally,the retirement plan may include a projection of ending retirement assets104 and an income stability ratio estimate 106. In some embodiments, theretirement plan may also include information regarding custom goalsbeyond a base level of desired income during retirement, which mayinclude custom goals for significant recurring or non-recurring expenses(e.g., travel, health care, weddings, second homes, etc.). In someembodiments, the custom goals may be presented in a custom goal block108, which may include a success indicator 110 to indicate whether theprojected income is sufficient to fund the custom goals at a selectedlevel.

In addition to the tabular summary of income in FIG. 1A, the retirementplan may be presented in a variety of other formats. FIG. 1B illustratesa graphical summary of the retirement plan showing client income in eachyear through the retirement period in an income graph 112. The incomegraph 112 may include a retirement year marker 114 to indicate theretirement year used as a parameter in the projections underlying theretirement plan. In some embodiments, the chart may include anindication of a shortage 116, such as by shading a portion of the grapha different color or pattern.

Although the tabular and graphical summaries of FIGS. 1A and 1B presentinformation regarding income projections of the retirement plan, othermetrics may also be used. FIG. 1C illustrates a graphical summary of theretirement plan showing total asset value through the retirement period.The balance graph 118 shows the balance in all accounts, which is seenincreasing until the retirement year and eventually decreasingthereafter. It should be understood that FIGS. 1A-1C are exemplary only,and that other types of retirement plans may be generated and that othermeans of presenting retirement plans may be used.

In some embodiments, some or all aspects of the retirement plandiscussed above may be added to a presentation for the client. This mayinclude adding some or all of the information regarding the retirementplan as a slide in a presentation. In a preferred embodiment, thepresentation of the retirement plan includes a presentation option 120to add one or more slides to a presentation. When the user selects thepresentation option 120, one or more slides derived from the presentedretirement plan may be displayed to the user for selection. The slidesmay include representations of part or all of the retirement plan, suchas the tabular block 102, the income graph 112, or the balance graph118. The slides may further contain information regarding all timeperiods or only key time periods (e.g., every fifth year before andafter retirement). The user may select one or more of the slides to addto the presentation, and the slides may be then appended to the end ofthe presentation. In some embodiments, one or more default slides may beautomatically generated for the presentation, to which additional slidesmay be appended. For example, a title slide may be generatedautomatically upon creation of a new client profile by the user. Asparameters are adjusted and new retirement plans are generated, asdiscussed further below, the user may select part or all of any of theplans to append to the presentation. Once a plurality of slides havebeen added, the user may further reorder the slides. When completed, theslide presentation may be saved, exported, or printed for presentationto the client.

The embodiments described herein may be implemented using a retirementplan generation and optimization system 900, described in further detailbelow. The system 900 includes front end components 902 and back endcomponents 904, communicatively connected through a network 930. Thefront end components may be disposed within a computing device 910operated by a user, which may include a display 912 and a controller 916with a microprocessor 920 and a program memory 922. The back endcomponents 904 may be disposed within one or more servers 940, eachincluding a processor 962 and a program memory 960. Each server 940 mayfurther include or be communicatively connected to one or more databases946.

FIG. 2 illustrates a flow diagram of an exemplary retirement plangeneration and adjustment method 200. The method 200 receives clientinformation and parameters, from which the method generates and presentsa retirement plan as discussed above. The method 200 presents aplurality of options for adjustments, changes, or “what if” scenarios tothe user along with the retirement plan. When the user selects one ofthe options to change the parameters upon which the retirement plan isbased, the method 200 immediately adjusts the retirement plan asdisplayed to the user in real-time. Because the parameter adjustmentoptions are displayed simultaneously with the retirement plan (e.g., inseparate portions of one page within an application window or browserwindow), the retirement plan appears to be adjusted in real-time (i.e.,without a noticeable delay) as the user adjusts one or more parameters.Likewise, in some embodiments, when a user adjusts a parameter using aslider bar, the displayed retirement plans may smoothly adjust through aplurality of retirement plans as the user operates the slider. After theparameters have been adjusted, the changes may be saved to a database orother computer storage medium or device. The method 200 may then repeatthe steps involved in adjusting the parameters, generating adjustedretirement plans, and displaying the adjusted retirement plans to a useras long as changes to the parameters are received.

At block 202, the method 200 may begin by receiving client informationand parameters at the controller 916. The client information may includeinformation regarding the identity, family, finances, or goals of theclient, as well as parameters used in determining future values for theretirement plan. This information may further include the client's name,age, spouse, spouse's age, dependents and their ages, income (e.g.,salary, commissions, distributed profits, rental income, dividends,etc.), retirement assets (e.g., 401k accounts, IRA accounts, etc.),other financial assets (e.g., brokerage accounts, bank accounts, trusts,deferred compensation, directly held equities or debt instruments,etc.), other non-financial assets (e.g., real estate, vehicles, artwork,etc.), insurance policies, annuities, expected inheritances, currentexpenses (e.g., mortgage service, other debt service, rent, taxes,tuition, healthcare expenses, travel, etc.), anticipated expenses duringretirement (e.g., custom goals), anticipated retirement income sources(e.g., pension, Social Security, retirement account withdrawals, rentalincome, etc.), or retirement income goals (e.g., annual income levelsfrom anticipated retirement income sources, funding for recurring ornon-recurring custom goals, etc.). The parameters may includeassumptions used in determining the retirement plan, includingretirement income goals, assumptions regarding rates of return,retirement ages, expenses during retirement, tax rates, defined benefitincome source solvency, or other related assumptions that impactprojections of retirement finances of the client. The parameters includeinformation that may vary over time and that may affect projections ofincome or assets over time. For example, parameters may includeestimates of information that will be determinable only in the future(e.g., market returns on assets held), whereas client information alsoincludes information ascertainable at the time the retirement plan isdetermined (e.g., current values of assets, client age, etc.). In someembodiments, the client information may include the parameters. In someembodiments, the client information may be received at a computingdevice 910, transmitted via the network 930 to the server 940, andstored in the database 946. Such stored client information may be laterretrieved by the same or different computing device 910 via the network930 from the database 946.

At block 204, the controller 916 may determine a retirement plan basedupon the received information, including the parameters. The retirementplan may include income statements, cash flows, balance sheets, or otherstandard financial metrics. Additionally or alternatively, theretirement plan may include information regarding the following:expected retirement year or age, asset rates of return, asset balancesat retirement, asset balances at other times, income sources, incomesource growth, total income levels, withdrawals of assets, inflation,taxes, market conditions, additional goals (e.g., recurring ornon-recurring expenses), additional savings, or other similar financialinformation. The retirement plan may be determined using known methodsby projecting future assets, liabilities, expenses, and income basedupon the received information and parameters. For example, a retirementaccount such as a 401k account may be assumed to grow at an average rateof return (e.g., 5%) each year from the time of the retirement planuntil the anticipated retirement year, with additional funding each yearuntil retirement (e.g., 10% of the client's gross annual income), todetermine a projected value of the retirement account at the anticipatedretirement year. The same account may further be projected to decreasein value by regular withdrawals during retirement (e.g., by withdrawalstotaling 4% per year) from the anticipated retirement year to the yearin which the client reaches the age of his or her life expectancy. Usingthe parameters, the method 200 may determine projected surpluses ordeficits in each year before or during retirement by comparing theretirement income goals with the total income from all sources and totalexpenses. In some retirement plans, one or more assets may be drawn downby additional withdrawals to eliminate any deficits in each year untilthe assets are depleted. In some embodiments, the method 200 mayautomatically determine the one or more assets from which to withdrawadditional funds by determining the tax effects or rates of return oneach of a plurality of assets. For example, the method 200 may determinethat the client should defer withdrawing any amount from a higher-returnaccount until lower-return sources are depleted.

At block 206, the determined retirement plan may be presented to theuser using the display 912 or other means. Part or all of the retirementplan may be presented to the user, and the presentation may includeoptions to view additional information or to adjust the manner ofdisplaying the information. For example, the retirement plan presentedto the user may include information regarding assets, income, andexpenses on one window, while presenting summary information regardingparameters such as returns on assets, retirement age, or retirementincome goals. The user may also be presented with options to expand thesummaries to obtain more detailed information regarding the parametersor to adjust the parameters. Along with the determined retirement plan,a plurality of options to change or adjust one or more parametersaffecting the projections of the retirement plan may be presented to theuser at block 206. The options may include options to manually adjustone or more parameters (e.g., a slider to select an additional amount tosave each month year prior to retirement, a drop-down bar to select ananticipated rate of inflation, a text box to enter an adjustedretirement income goal, or a check box to select or deselect a customgoal). Additionally, or alternatively, the options may include optionsto automatically adjust one or more parameters to meet retirement incomegoals or other goals of the client (e.g., automatically adjustretirement income or automatically adjusts additional monthly savingsprior to retirement to eliminate projected income deficits for theentire projected retirement period). These options thus allow a user toquickly determine alternative scenarios for the retirement plan. In apreferred embodiment, the information regarding the retirement plan andthe options to change the parameters are displayed simultaneously on thedisplay 912, such as within one window or tab within an applicationwindow or internet browser. This preferred embodiment allows real-timedisplay of adjustments of the retirement plan in response to useradjustments of parameters, as discussed further below.

At block 208, the controller 916 may receive an indication of a changeto a parameter, such as an adjustment of a parameter by using one of theplurality of options displayed at block 206. In a preferred embodiment,the indication is received immediately upon an adjustment to one or moreof the parameters. Alternatively, the user may be able to adjust amultiplicity of parameters before the indication of the parameterchanges is received (e.g., by requiring the user to select an option todetermine a new plan based upon the adjustment prior to any adjustmentsbeing made to the parameters). In some embodiments, the receivedindication of a change or adjustment to one or more parameters may bestored in the program memory 922 or transmitted to the server 940 forstorage in the program memory 960.

At block 210, the controller 916 may determine a new retirement planbased upon the received information, including the indication of thechange or adjustment to one or more parameters. The new retirement planmay include the same type of information determined with respect to theretirement plan determined at block 204, as discussed above and furtherdiscussed below.

At block 212, the new retirement plan determined at block 210 may bepresented to the using the display 912 or other means. In a preferredembodiment, the new retirement plan is presented to the user by updatingthe values presented to the user in real-time (i.e., without anoticeable delay between the time the user adjusts a parameter and thetime the new retirement plan is presented). For example, a change in themarket rate of return on assets prior to retirement may be selected by auser, and the values presented in a table or chart that depend upon therate of return may immediately be determined and presented withoutchanging any other information or layout in the window viewed by theuser. As in block 206, part or all of the retirement plan may bepresented to the user, with some portions minimized or presented insummary form. Also as above, the plurality of options to change oradjust the parameters further may be presented. It should be understoodthat necessary modifications to the presented options may be made basedon the previous adjustments to the parameters (e.g., a slider on aslider bar may be repositioned to the adjusted parameter value receivedat block 208). In some embodiments, the layout of the presentation maybe reset to a default layout (e.g., with information presented in atabular or chart form, some information being presented only in summaryform, etc.). In a preferred embodiment, however, the layout remains asit was before the indication of a change to a parameter was received.This provides a smooth user interface and enables the user to makedirect comparisons of the effects of adjustments to the parameters.

At block 214, the indication of a change or adjustment to one or moreparameters received at block 208 may be stored in the program memory 922or transmitted to the server 940 for storage in the program memory 960.Additional information regarding the client, the determined newretirement plan, or the layout of the presentation of the new retirementplan may also be stored in program memories 922 or 960 for future use.

At block 216, the controller 916 may determine whether an additionalindication of a change or adjustment to a parameter has been received.When an additional indication is received, a new retirement plan isdetermined and presented and the adjusted parameters saved at blocks210-214, as above. When no additional indication is received, the method200 eventually ends. It will be understood that the method 200 mayrequire a user entry or time-out event to end the method, such as anaction by the user closing a program, application, window, or tab. Themethod 200 may also terminate at any time if so instructed by a user.

Although the method 200 illustrates a general process flow of anexemplary retirement plan generation and adjustment method, the methodsand figures described below further describe additional operations,functions, or features that may be implemented consistently with theinvention as described in method 200. The following embodiments provideadditional detail or alternative embodiments of part or all of themethod 200, all of which are consistent with the invention as describedherein.

FIG. 3 illustrates a flow diagram of an exemplary data entry method 300for prepopulating default values for client information and parametersbased upon frequent responses. The data entry method 300 may beimplemented during an initial client setup phase or at a later time toadd or alter client information and parameters. The user initiates themethod 300 by requesting the addition or alteration of information of anitem relating to a retirement plan. When the user has made at least oneentry or selection, the method determines whether additional relatedinformation that has yet to be entered may be prefilled for the userwith default values. If default values for the information can bedetermined, then the method presents the default values as prepopulatedvalues within a form. The user may either accept the prepopulated valuesor may adjust the prepopulated values as necessary to ensure accuracy ofthe information. The user may also input additional information, asnecessary. Once the user has finished entering information for aparticular item, the user may further enter additional informationrelating to other items using the same steps. The method 300 ends whenthe user requests the generation of a retirement plan based upon theinformation.

At block 302, the controller 916 receives a request to add clientinformation from the user. The request to add client information mayinclude a request to add a new item or adjust an item of clientinformation regarding the identity, family, finances, or goals of theclient. The request may be received as a result of a user action tocreate a new item or edit an existing item and may include a selectionof a type of information item to add or edit. The request to add clientinformation may include multiple steps, or multiple requests may bereceived for each information item. For example, the user may generate arequest to add a new information item relating to a source of retirementincome, select one of several types of income sources, and enterinformation regarding the income source (e.g., when the source starts,the income level, annual increases to the income level, etc.).

At block 304, the controller 916 determines whether any default valuesare available for the information item. The determination may firstinclude determining whether any additional information relating to theinformation item may be entered. For example, in some embodiments,information item data may be accepted only through a plurality ofelectronic forms, each of which has a finite number of fields. When theuser selects an information item to add or edit, the appropriate formmay be determined and presented to the user. At block 304, thecontroller 916 may determine whether any additional fields are availablefor data entry. If each field has a value associated with it, then thecontroller 916 may determine that no default values are availablebecause the default values should not replace values already entered. Ifat least one field has no value or a null value associated with it, thenthe controller 916 may further determine whether a default value isavailable for the empty field. The default value may or may not dependupon client information or parameters already entered. For example, aretirement income goal may be prepopulated with a default value of 80%of the client's current income, thus causing the default value to dependupon other client information. As another example, the default value forthe rate of inflation to apply to the client's income goal may beprepopulated at a default based on macroeconomic analysis (e.g., 3% forall clients), such that the default rate of inflation does not dependupon other client information. Default values or rules for generatingdefault values (e.g., default retirement income goal as 80% of clientincome) may be stored in the program memory 922 or 966.

When one or more default values are determined to be available at block306, the method 300 proceeds to present the one or more default valuesto the user at block 308. When no default values are determined to beavailable at block 306, the method 300 proceeds instead to receive anyadditional client information from the user at block 312.

At block 308, the default values determined at block 304 may bepresented via the display 912 to the user for review and eitherverification or adjustment. In a preferred embodiment, the determineddefault values may be inserted into the appropriate fields of formsdisplayed to the user, such that no additional action is needed by theuser to enter or verify each default value separately. Instead, anydefault values not changed by the user will be considered verified whenthe item is verified or saved by the user. In some embodiments, thedefault values may be displayed at block 308 to have a differentappearance (e.g., text color, background color, etc.) from informationentered by the user in order to provide a visual indication of thedefault values presented.

At block 310, the controller 916 receives either verification of thedefault values presented to the user or adjustments to the defaultvalues presented to the user. As noted above, verification may includethe completion or saving of the item or form on which the user isworking without an adjustment to one or more of the presented defaultvalues. Adjustments to the presented default values may also be enteredby the user, in which case the adjusted values will be stored and usedin generating one or more retirement plans for the client. For example,the user may create a client profile including a client's retirementincome goal, which profile prepopulates with a default rate ofinflation. If the user simply saves the profile, the default rate ofinflation may be treated as verified. The user could instead adjust therate of inflation either up or down if desired. Additionally, oralternatively, some embodiments may require the user to expressly verifyor reject the default values. In such embodiments, rejection of thedefault values may include either full rejection or adjustment of thedefault values.

At block 312, the controller 916 may receive any additional clientinformation related to the information item from the user. Theadditional information may include information for which no defaultvalues were available. When no such additional information is entered,the block 312 may be bypassed. After any additional information has beenentered and received by the controller 916 at block 312, the controller916 may next determine whether a request to generate a retirement planhas been received from the user at block 314. Where no request togenerate a retirement plan has been received, the method 300 maycontinue upon receipt of another request to add or adjust clientinformation or parameters at block 302. Where a request to generate aretirement plan has been received, the method 300 may proceed togenerate a retirement plan for the client based upon the clientinformation and parameters at block 316, as discussed elsewhere herein.

As an example of the data entry method 300, a user may create a profilefor a client and add information regarding the client and the client'sfinances, from which a retirement plan may be generated. The clientprofile may include information such as the client's name, age, income,and retirement goal, along the with similar information for the client'sspouse. The client's joint retirement income goal in current dollars, anexpected rate of inflation, and a survivor's retirement income goal as apercentage of the joint retirement income goal may also be entered.

Continuing the example, the user may next generate a request to addadditional client information, such as an income source. In someembodiments, a form with a plurality of fields for information regardinga retirement income source may be displayed when the user selects anoption to create a new information item regarding retirement income.Once the type of retirement income is selected (e.g., Social Security),a default description is determined and displayed (e.g., “John's SocialSecurity”). Additional default values may also be determined andpresented, including the time at which the income source starts, anannual rate of increase for the level of income from the source, and atime at which the source ends. An option to generate an automaticcalculation or estimate may also be presented, which may open a newwindow within the form to estimate the future value of the income sourceusing information on current earnings and the client's age. Once theestimate is determined, the results may be populated into the incomelevel field. The user may then review the information and verify it byselecting a save option. Once the information item is saved, it is addedto the list of retirement income sources for the client.

Similarly, the user may generate a request to add an asset, such as a401k retirement account. As above, a form that may be displayed to theuser when the controller 916 receives a request to add a new asset.Within the form, account type and asset type fields may be presented tothe user as drop down boxes with lists of available types. Once the userselects the account type (e.g., “401k”), the form may adjust to acceptinformation relevant to that account type (e.g., periodic contributions,employer matching funds, withdrawal rate upon retirement, etc.). Asabove, default values may be determined and displayed for rate ofwithdrawal and timing of withdrawals from the asset. Similarly, the usermay also select the asset type and enter additional information forwhich no default values were determined to be available. As above, theinformation may be verified by the user and saved, at which point it maybe stored in the program memories 922 or 960 or in the database 946.

Custom goals may also be created and edited in the same manner as incomesources and assets above. FIG. 4 illustrates a screenshot of anexemplary form for creating a custom goal, showing a custom goalrelating to assisted living expenses. The user may first select a typeof custom goal from a dropdown box. Here, the “Assisted Living” type hasbeen selected. Once the type has been selected, a default value for thedescription may be determined and displayed, as shown. The default valuecan be identified in FIG. 4 by the lighter shade of the descriptiontext. The user may change the description for the custom goal if sodesired, as described above. Additional default values may likewise bedetermined and displayed, such as a start date, end date, inflationrate, etc. The user may change any of the default values or may enterfurther information regarding the custom goal, such as the annualexpense, which may then be adjusted by a default or user-entered rate ofinflation. The custom goals may be used to increase the projectedexpenses or retirement income goal for part or all of the client'sretirement, as discussed further below. In the example shown in FIG. 4,the expense is projected to begin when the client reaches the age ofninety and continue through the remainder of the client's life.

Continuing the example, when the user has finished entering clientinformation, the user may request that a retirement plan be generated.Upon receiving a user request to generate a retirement plan, thecontroller 916 may determine and present a retirement plan to the userbased upon the received client information, such as the retirement plansillustrated in FIGS. 1A-C. The exemplary retirement plan may show theuser information regarding the client's anticipated sources ofretirement income, the client's assets, the client's retirement incomegoal, and additional information regarding various parameters used inthe retirement plan.

FIG. 5 illustrates a flow chart of an exemplary retirement plandetermination and adjustment method 500 for determining a retirementplan, receiving adjustments to parameters, and determining andpresenting a new retirement plan. The method 500 begins by receivingclient information and determining parameters for the projectionsinvolved in determining the retirement plans. A first retirement plan isthen determined and presented to the user, along with a plurality ofoptions to change the parameters. When the user selects one or more ofthe options to change the parameters, the parameters are changed to theselected values, and a second retirement plan is determined andpresented to the user. If the user selects further options to change theparameters, the parameters are further changed, and subsequentretirement plans are determined and presented.

The method 500 may be implemented by the controller 916 of the computingdevice 910, as discussed further below. The retirement plan and otherinformation or options may be presented to the user by the display 912,and the user may enter information or make selections using the input914. In some embodiments, the computing device 910 may communicate withthe server 940 via the network 930 to send information or selectionsreceived from the user to the server 940 or to receive stored ordetermined information from the server 940.

At block 502, the controller 916 may receive client information for aclient. The information may be received from the user, the programmemory 922, or from the server 940 (including the program memory 960 andthe database 946). The client information may include informationregarding the client and the client's current finances, as well asinformation regarding the parameters relating to future values ofvariables.

At block 504, the controller 916 may determine the parameters involvedin projecting future values of client income, expenses, liabilities, andassets. This may include determining future rates of return based uponthe asset type, income sources, laws, regulations, rules, tax rates,client's state of residence, or other information. Additionally, oralternatively, determining the parameters may include retrieving datastored in the database 946 or in the program memory 922. In someembodiments, the client information may include specific values for theparameters, in which case the block 504 may not be implemented.

At block 506, the controller 916 may determine a retirement plan basedupon the client information and the parameters. The retirement plan mayinclude income statements, cash flows, balance sheets, or other standardfinancial metrics. As discussed above, the retirement plan may bedetermined using known methods by projecting future assets, liabilities,expenses, and income based upon the client information and parameters todetermine projected surpluses or deficits in each year before or duringretirement. In some retirement plans, one or more assets may be drawndown by additional withdrawals to eliminate any deficits in each yearuntil the assets are depleted. Additionally, the retirement plan may bedetermined to use or withdraw funds in an advantageous manner underapplication tax or other laws and regulations.

At block 508, the controller 916 may present or cause the retirementplan to be presented to the user by the display 912 or other means. Asdiscussed above, part or all of the retirement plan may be presented tothe user in summary form, in tabular or graphical format. Additionally,some information regarding the retirement plan may be obscured or hiddenwhen presented to the user. The presented retirement plan may includeone or more options related to layout or presentation of theinformation. FIG. 6A illustrates a screenshot of an exemplarypresentation of a retirement plan showing the retirement plan in tabularform. Projected income from all sources (including withdrawals fromassets), retirement income goals (including custom goals), and thesurplus or shortfall of the projected income are shown forrepresentative years during the retirement period in tabular block 602.The shortfalls in the final periods indicate a deficiency in theretirement plan under the parameters used in the projections. Therefore,the user may want to adjust one or more of the parameters to obtain anew retirement plan with sufficient income to meet the retirement incomegoals throughout the client's projected retirement period.

At block 510, the controller 916 may present or cause a plurality ofoptions to change or adjust the parameters relating to the retirementplan to be presented to the user by the display 912 or other means. Theplurality of options may be presented simultaneously with the retirementplan, discussed above in relation to block 508. In a preferredembodiment, the plurality of options are presented within the samewindow as the retirement plan information, such that the user may selectone or more of the options to change or adjust the parameters withouthiding or obscuring the displayed retirement plan information. Thisenables the method 500 to adjust the information in the retirement planin response to a selection of an option to change a parameter inreal-time. FIG. 6A illustrates this preferred embodiment, in which theretirement plan information in tabular block 602 occupies the samewindow without being obscured by parameter change options. Although anumber of specific options to adjust or change parameters are describedherein, it should be recognized that additional parameters relating toprojections of future values of assets, liabilities, income, or expensesmay be included in some embodiments.

Parameter change options 604-610 allow the user to adjust parametersrelating to the rate of return on client assets. The asset rate ofreturn options 604 allow the user to adjust the expected rate of returnon assets subject to market risk. In the exemplary embodiment, the ratesof return may be adjusted together or separately for the periods beforeand after the client's retirement. This allows the user to produce aplan that accounts for lower-risk investing during the retirement periodthat before the client's retirement. Similarly, the asset return typeoptions 606 allow the user to adjust whether the asset values areprojected based upon a fixed rate of return in each year or whether theasset values are projected based upon a variable rate of return with anaverage return as indicated by the asset rate of return options 604.FIG. 6B illustrates a screenshot of the exemplary presentation of theretirement plan, showing additional options to change parametersrelating to the rate of return on assets. Specifically, it shows anannual rate of return chart 612 for each year before and duringretirement with a fixed rate of return. FIG. 6C illustrates a screenshotof the exemplary presentation of the retirement plan, showing the sameaverage annual rate of return with a variable rate of return. Eventhrough the average rate of return remains unchanged, the variation inrates of return shown in FIG. 6C can result in changes to the retirementplan's income and asset values. A comparison of the fixed and variablereturns shows the importance of assumptions regarding market returns andtiming on the retirement plan.

Returning to FIG. 6B, the stress test options 608 allow the user to testthe sensitivity or robustness of the retirement plan to positive ornegative variations in market returns. The stress test options 608 mayinclude one or more of the following market events: a single-yearreduction in the rate of return on at least one asset, a multi-yearreduction in the rate of return on at least one asset, a single-yearreduction in the value of at least one asset, a multi-year reduction inthe value of at least one asset, or a multi-year series of changes tothe rate of return that includes at least one increase in the value ofat least one asset and at least one decrease in the value of at leastone asset. For example, FIG. 6D illustrates a selection of the stresstest options 608 relating to a bad decade preceding retirement, in whichfour years have negative rates of return and six years have positiverates of return that fail to offset the years with negative rates ofreturn. Because timing of market fluctuations affects returns, thetiming options 610 allow the user to adjust the timing of the marketfluctuations. FIG. 6E illustrates the stress test selection of FIG. 6Dadjusted to begin after retirement by using the timing options 610.

Returning to FIG. 6A, the options may include optimization options 614allowing a user to adjust one or more parameters associated with eachoption such that any difference between the retirement income goal andthe projected income (i.e., a surplus or shortfall) is minimized. Thedifference may be minimized for each year during the retirement period,or the difference may be minimized for the final year. Alternatively,the optimization options 614 may make the minimal adjustments to theparameters that eliminate any shortfalls in any year during theretirement period. The optimization options 610 may be associated withparameters such as the client's retirement income goal, the client'sretirement age, the client's spouse's retirement age, additional savingsbefore retirement, or other similar parameters. In some embodiments, theoptimization options 614 may be constrained by other parameters orclient information. For example, an optimization option associated withadditional savings before retirement may be limited by informationrelating to the client's income and expenses. FIG. 6F illustrates theexemplary display of the retirement plan where the optimization option614 associated with a rate of additional savings before retirement isselected. The optimized additional monthly savings indicates theadditional amount the client would need to save each month beforeretirement to have no shortfalls during the retirement period.

In some embodiments, the optimization options 614 may further relate toestate planning, as illustrated in FIG. 6G. In such embodiments, theoptions may be associated with parameters such as anticipated lifeexpectancy or age at death, as well as life insurance coverage.Additional parameters or options may further relate to the type andamount of life insurance coverage. Using sliders or other means, theuser may adjust the values of the parameters associated with theoptimization options 614. For example, the value of the parameterassociated with life expectancy may be adjusted to project changes tothe retirement plan values if one or both clients were to live shorteror longer lives. If the client or clients live longer lives, they mayneed to increase the amount saved, delay retirement, or reduceexpenditures during retirement to avoid a shortfall during their finalyears. On the other hand, if one client dies at an earlier age thanexpected, the loss of income from sources associated with that client(e.g., pension benefits or Social Security benefits) may result in ashortfall for a surviving spouse. FIG. 6G shows an adjustment by theuser to a parameter associated with the optimization options 614 thatwould result in a shortfall during the final years of the retirementplan. To counteract such shortfall, the user may further select aninsurance option 622 to add a life insurance policy. The user may selectan optimization option 614 associated with a life insurance policy todetermine the appropriate type or level of insurance to minimize theshortfall. FIG. 6G illustrates the effects upon the retirement plan ofan earlier death of a client, coupled with an offsetting life insurancepolicy.

Returning again to FIG. 6A, the options may include a drawdown option616 for some assets. The drawdown option 616 adjusts the parameters towithdraw from the associated asset only the minimum amount necessary toavoid an income shortfall in each year during the retirement period.When selected, the total amount of withdrawals (if any) from the assetin each year during retirement will be the lowest amount required forthe projected net income to meet or exceed the client's retirementincome goals for that year. Compared with a fixed percentage withdrawal,the drawdown option 616 may cause the retirement plan to withdraw more(if a shortfall would otherwise occur) or less (if a surplus wouldotherwise occur) than the fixed percentage in any year. FIG. 6Hillustrates the exemplary display of the retirement plan where thedrawdown option 616 is selected. In the column labeled “2055” of thetabular block 602, the selection of the drawdown option 616 haseliminated the $82,396 shortfall, but the selection of the drawdownoption 616 has also increased the shortfall from $97,424 to $179,388 inthe column labeled “2058” by fully depleting the asset.

Returning again to FIG. 6A, the options may further include areinvestment option 618 that reinvests any surplus of projectedretirement income above the client's retirement income goals for futureuse. This parameter may cause a more reasonable retirement plan to bedetermined, particularly where large surpluses shortly after retirementand shortfalls later in the retirement period exist. FIG. 6I illustratesthe exemplary display of the retirement plan where the reinvestmentoption 618 is selected. Selecting the reinvestment option 618 causes theretirement plan to place any surplus into a reinvestment asset 620. Noincome is withdrawn from the reinvestment asset 620 until it isnecessary to avoid a shortfall.

At block 512, the controller 916 may determine whether a request to endthe method 500 has been received. If no such request has been received,the method continues until either a request to end has been received ora user selection of an option to adjust a parameter has been received.

At block 514, the controller 916 may receive a selection of at least oneor the plurality of options to adjust or change the parameters presentedto the user at block 510. Selection of one or more options to adjust orchange the parameters may be received from the user, as indicated above.Upon receiving an indication of a selection to change or adjust aparameter, the controller 916 may adjust the parameters, determine a newretirement plan, and present the new retirement plan to the user.

At block 516, the controller may adjust one or more parameters basedupon the selection received at block 514. Where a change in oneparameter affects another parameter, more than one parameter may beadjusted. For example, the retirement ages of the client and theclient's spouse may be linked, such that a change in the retirement ageof one causes a change in the retirement age of the other. As anotherexample, the stress test options 608 may cause an adjustment to theparameters for the rates of return in multiple years, as shown in FIGS.6D-6E.

At block 518, the controller 916 may determine a new retirement planbased upon the client information and the adjusted parameters. Thisdetermination may be made in real-time (i.e., without noticeable delaybetween the user selection and the display of the new retirement plan),such that the user may easily compare the impacts of various changes tothe parameters. This may be achieved by processing the receivedselection of an option to adjust or change the parameters on thecomputing device 910. Where the method 500 is implemented in an internetbrowser, for example, the server 940 may initially send a script orother executable code to be run on the computing device 910 at or beforethe method 500 starts. The script may then be executed by the computingdevice 910 without further instructions from the server 940, or thescript may request instructions from the server 940 as necessary. Inorder to improve the speed at which adjustments or changes may be madeand displayed, however, the script may contain all instructionsnecessary to determine and present retirement plans based upon theclient information and parameters. By incorporating the instructionsnecessary for the controller 916 to determine retirement plans withoutreference to resources external to the computing device 910, the timerequired to change or adjustment parameters and determine a newretirement plan may be reduced. This results from the elimination of thecommunication lag inherent in transmitting data over a network to aserver or other device, then waiting to receive a response over thenetwork from the server or other device. In some embodiments, however,the communication lag may be considered acceptable, and the newretirement plan may be determined by the server 940.

In some embodiments, determining the new retirement plan may includedetermining, by the controller 916 of the computing device 910, the newretirement plan without receiving additional information from anyadditional computing devices communicatively connected to the computingdevice 910 after receiving an indication of a parameter change, such asa selection by the user of one or more of the plurality of options forchanging or adjusting the parameters. In further embodiments,determining the new retirement plan may include determining, by thecontroller 916 of the computing device 910, the new retirement planwithout requesting additional information from any additional computingdevices communicatively connected to the computing device 910 afterreceiving an indication of a parameter change. Specifically, the newretirement plan may be determined without communication between thecomputing device 910 and the server 940 (via the network 930 orotherwise) after the computing device 910 receives a selection of atleast one of the plurality of options to change or adjust theparameters. In some such embodiments, however, the computing device 910may nonetheless receive information from the server 940 via the network930 prior to receiving a selection from the user or after determiningthe new retirement plan. The computing device 910 may also communicatethe received selection or the adjusted parameters to the server 940 atany time in such embodiments.

At block 520, the controller 916 may present or cause the new retirementplan to be presented to the user by the display 912 or other means. Asnoted above, the new retirement plan may be determined and presented inreal-time, immediately upon the user's selection of one or more of theplurality of options to change or adjust the parameters. It should beunderstood that smoothing transitions may be used to present a pleasingvisual effect while still presenting the new retirement plan inreal-time. For example, the heights of several bars in a chart may bepresented as rising or falling to new values over the course of adiscernible period of time (e.g., half a second, one second, twoseconds, etc.) in response to the user selecting an option to adjust aparameter. Additionally, the layout and presentation options may remainunchanged for presentation of the new retirement plan or may be reset todefault settings.

At block 522, the adjusted parameters from block 516 may be stored inthe program memory 922 or transmitted to the server 940 for storage inthe program memory 960 or the database 946. Additional clientinformation or the layout or presentation options may also be stored inprogram memories 922 or 960 or in the database 946 for future use. Insome embodiments, the adjusted parameters may be stored in the programmemory 922 and asynchronously communicated to the server 940 via thenetwork 930, such as during a periodic update.

The method 500 then continues at block 510 with presentation of aplurality of options to change or adjust the parameters, as describedabove. When a request to end the method 500 is determined to have beenreceived at block 512, the method 500 may terminate. The request to endmay be generated by a user or automatically determined (e.g., a sessiontime-out after a period of inactivity).

FIG. 7 illustrates a flow chart of an exemplary asset reallocationmethod 700 for reallocating part or all of an asset to a different typeof asset. As above, the method 700 receives client information andparameters, determines a retirement plan, and presents the retirementplan and a plurality of options to adjust the parameters. At least oneof the options to adjust the parameters is an option to reallocate fundsfrom an asset of one type to an asset of another type for purposes ofdetermining a new retirement plan. For example, the new retirement planmay project retirement income under a scenario where stock in aretirement account would be sold and the value funds used to purchase avariable annuity. It should be understood that any references to“reallocation” of assets or funds refers to a change of parameters toproject a hypothetical reallocation of assets or funds, regardless ofwhether the client acts upon the projections to transfer funds betweenactual assets. Some embodiments may include one or more options toreallocate assets to a type of asset for which a quote may be necessaryor desirable. In some such embodiments, a request for a quote on a newtype of asset may be generated and transmitted to parties engaged in thebusiness of selling or administering such assets, and one or more quotesmay be returned and used in determining the new retirement plan.

At block 702, the controller 916 may receive client information andparameters relating to a retirement plan, as described above. Also asdescribed above, the controller 916 may then determine a retirement planat block 704 and present the retirement plan to the user via a displayor other means at block 706. At block 708, the controller 916 may alsopresent a plurality of options to adjust or change the parameters to theuser, such that the plurality of options are presented simultaneouslywith the retirement plan, as described above. In a preferred embodiment,the plurality of options are presented within the same window as theretirement plan information, such that the user may select one or moreof the options to change or adjust the parameters without hiding orobscuring the displayed retirement plan information, thereby allowingreal-time adjustment of the retirement plan. At least one of the optionsto adjust or change the parameters may be an option to reallocate partor all of one or more assets to another type of asset. FIG. 8Aillustrates a screenshot of an exemplary presentation of a retirementplan, which includes a tabular block 802 containing informationregarding the retirement plan and a reallocation option 804.

At block 710, the controller 916 may receive a selection of one or moreoptions to reallocate part or all of at least one asset to a differenttype of asset. This may include changing the asset type to ahigher-return asset or to a lower-risk asset. In some embodiments, thecontroller 916 may further cause additional options relating toavailable asset types to which the value of the selected asset may bereallocation, and the user may select or verify further details relatingto the available asset types. FIG. 8B illustrates a screenshot of anexemplary display of such additional options presented to the user uponselection of the reallocation option 804. Upon entry, adjustment, orverification of the parameters relating to the additional options, themethod 700 may continue at block 712.

At block 712, the controller 916 may determine whether to request aquote for the selected new type of asset. Although some asset types aresimple financial products, others may be more complex and may varyconsiderably in their terms. For example, a variable annuity may involvean annual credit, which may be either compound or simple. The credit mayfurther be limited to a set number of years or may have no such limit,as shown in FIG. 8B. The terms of complex financial products such asvariable annuities may, therefore, fluctuate significantly. Thecontroller 916 may determine that a quote should be requested for theselected new asset type. In some embodiments, the controller 916 mayfurther prompt the user to authorize the request of a quote from one ormore parties or may prompt the user for additional information.

When it has been determined at block 714 that no quotes should berequested, the method 700 continues at block 720. When it has beendetermined that a quote should be requested at block 714, the controller916 may send a request for a quote via the network 930 to one or moreparties engaged in the business of providing financial products of thenew asset type. For example, requests for quotes on a variable annuitymay be transmitted to a plurality of insurers, brokers, orrepresentatives. The request may be standardized to allow an automatedresponse based upon the transmitted information. At block 718, thecontroller 916 may then receive one or more quotes for the new assettype. If no quote is received after a predetermined period, thecontroller 916 may attempt to retransmit the request to the unresponsiveparty in some embodiments. Once all quotes have been received or thecontroller 916 has determined that a threshold time for responding haspassed, the method 700 may continue at block 720. When no quotes arereceived, default values may be used for the purpose of reallocating theasset to the new type of asset. When more than one quote is received atblock 718, the microprocessor 920 may select the most favorable quote toproceed. Alternatively, the microprocessor 920 may cause a plurality ofquotes to be presented to the user for selection of one or more of thereceived quotes. As a further alternative, all received quotes may bepresented to the user as alternative new assets for reallocation of theasset at block 720.

At block 720, one or more distribution options for reallocating anamount of the asset to the one or more new assets may be presented tothe user via the display 912 or by other means. The distribution optionsmay include predetermined reallocation distributions (e.g., fullreallocation, reallocation of half the current value of the asset,reallocation of at least a minimum value from the asset to the newasset, etc.). Alternatively, the distribution options may allow the userto reallocate any amount to each of the one or more new assets. FIG. 8Cillustrates a screenshot of exemplary distribution options 806 forreallocating part or all of the value of the asset. The distributionoptions 806 are illustrated as sliders, which are logically connectedsuch that a change in the value of one of the sliders necessarilycreates a counterbalancing change in the other. Thus, the total amountallocated between the asset and the new asset using the distributionoptions 806 remains constant.

At block 722, the controller 916 may receive a selection of an amount ofthe asset to reallocate to the new asset type. This may occur when theuser adjusts the allocation using the presented distribution options,such as by operating the sliders of the distribution options 806.

At block 724, the controller 916 may adjust the parameters based uponthe selected reallocation of value from the asset to the new asset. Theadjusted parameters may then be used in determining a new retirementplan at block 726, in the manner described above. The new retirementplan may then be presented to the user at block 706, as described above.The user may then continue to select options for adjusting or changingthe parameters according to the method 700, as previously described.

FIG. 9 illustrates a retirement plan generation and optimization system900 for implementing the methods as described herein. The system 900includes front end components 902 and back end components 904,communicatively connected through a network 930. The front endcomponents may be disposed within a computing device 910 operated by auser, and the back end components 904 may be disposed within one or moreservers 940. Each server 940 may further include or be communicativelyconnected to one or more databases 946.

The computing device 910 may include a display 912, an input 914, and acontroller 916. The input 914 may include a “soft” keyboard that isdisplayed on the display 912 of the computing device 910, an externalhardware keyboard communicating via a wired or a wireless connection(e.g., a Bluetooth keyboard), an external mouse, or any other suitableuser-input device. The controller 916 includes one or moremicrocontrollers or microprocessors (MP) 920, a program memory 922, aRAM 924, and an I/O circuit 926, all of which are interconnected via anaddress/data bus 928. The program memory 922 may include an operatingsystem, a data storage, a plurality of software applications, and aplurality of software routines. As discussed above, the program memory922 may include software applications, routines, or scripts forimplementing the methods 200, 300, 500, or 700. In some embodiments, thecontroller 916 may also include, or otherwise be communicativelyconnected to, other data storage mechanisms (e.g., one or more hard diskdrives, optical storage drives, solid state storage devices, etc.) thatreside within the computing device 910. It should be appreciated thatalthough FIG. 9 depicts only one microprocessor 920, the controller 916may include multiple microprocessors 920. Similarly, the memory of thecontroller 916 may include multiple program memories 922 or multipleRAMs 924. Although the FIG. 9 depicts the I/O circuit 926 as a singleblock, the I/O circuit 926 may include a number of different types ofI/O circuits. The controller 916 may implement the program memories 922or the RAMs 924 as semiconductor memories, magnetically readablememories, or optically readable memories, for example.

In some embodiments, the front-end components 902 may communicate withthe back-end components 904 via the network 930. The network 930 may bea proprietary network, a secure public internet, a virtual privatenetwork or some other type of network, such as dedicated access lines,plain ordinary telephone lines, satellite links, cellular data networks,combinations of these, etc. Where the network 930 comprises theInternet, data communications may take place over the network 930 via anInternet communication protocol.

The back-end components 904 may include one or more servers 940. Eachserver 940 may include one or more processors 962 adapted and configuredto execute various software applications and components of the system900, in addition to other software applications. The server 940 mayfurther include a database 946, which may be adapted to store datarelated to the system 900, such as client information and parameters fora plurality of clients uploaded to the server 940 via the network 930.The server 940 may access data stored in the database 946 upon receivinga request for data from the computing device 910. The server 940 mayhave a controller 955 that is operatively connected to the database 946via a link 956. It should be noted that, while not shown, additionaldatabases may be linked to the controller 955 in a known manner. Thecontroller 955 may include a program memory 960, a processor 962, a RAM964, and an I/O circuit 966, all of which may be interconnected via anaddress/data bus 965. As with the controller 916, it should beappreciated that although only one microprocessor 962 is shown, thecontroller 955 may include multiple microprocessors 962. Similarly, thememory of the controller 955 may include multiple RAMs 964 and multipleprogram memories 960. Although the I/O circuit 966 is shown as a singleblock, it should be appreciated that the I/O circuit 966 may include anumber of different types of I/O circuits. The RAM 964 and programmemories 960 may be implemented as semiconductor memories, magneticallyreadable memories, or optically readable memories, for example. Thecontroller 955 may also be operatively connected to the network 930 viaa link 935. The server 940 may further include a number of softwareapplications stored in a program memory 960. The various softwareapplications may include a web server application responsible forgenerating data content to be included in web pages sent from the server940 to the computing device 910.

Although the description herein contained may refer to a client and auser or advisor, it should further be understood that the client mayoperate the system and methods described herein without the aid of anadvisor in some embodiments, in which case the client and user may bethe same person.

Throughout this specification, plural instances may implementcomponents, operations, or structures described as a single instance.Although individual operations of one or more methods are illustratedand described as separate operations, one or more of the individualoperations may be performed concurrently, and nothing requires that theoperations be performed in the order illustrated. Structures andfunctionality presented as separate components in example configurationsmay be implemented as a combined structure or component. Similarly,structures and functionality presented as a single component may beimplemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Additionally, certain embodiments are described herein as includinglogic or a number of routines, subroutines, applications, orinstructions. These may constitute either software (code embodied on anon-transitory, tangible machine-readable medium) or hardware. Inhardware, the routines, etc., are tangible units capable of performingcertain operations and may be configured or arranged in a certainmanner. In example embodiments, one or more computer systems (e.g., astandalone, client or server computer system) or one or more hardwaremodules of a computer system (e.g., a processor or a group ofprocessors) may be configured by software (e.g., an application orapplication portion) as a hardware module that operates to performcertain operations as described herein.

The performance of certain of the operations may be distributed amongthe one or more processors, not only residing within a single machine,but deployed across a number of machines. In some example embodiments,the one or more processors or processor-implemented modules may belocated in a single geographic location (e.g., within a homeenvironment, an office environment, or a server farm). In other exampleembodiments, the one or more processors or processor-implemented modulesmay be distributed across a number of geographic locations.

Unless specifically stated otherwise, discussions herein using wordssuch as “processing,” “computing,” “calculating,” “determining,”“presenting,” “displaying,” or the like may refer to actions orprocesses of a machine (e.g., a computer) that manipulates or transformsdata represented as physical (e.g., electronic, magnetic, or optical)quantities within one or more memories (e.g., volatile memory,non-volatile memory, or a combination thereof), registers, or othermachine components that receive, store, transmit, or displayinformation.

As used herein any reference to “one embodiment” or “an embodiment”means that a particular element, feature, structure, or characteristicdescribed in connection with the embodiment is included in at least oneembodiment. The appearances of the phrase “in one embodiment” in variousplaces in the specification are not necessarily all referring to thesame embodiment.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. For example, some embodimentsmay be described using the term “coupled” to indicate that two or moreelements are in direct physical or electrical contact. The term“coupled,” however, may also mean that two or more elements are not indirect contact with each other, but yet still co-operate or interactwith each other. The embodiments are not limited in this context.

As used herein, the terms “comprises,” “comprising,” “includes,”“including,” “has,” “having” or any other variation thereof, areintended to cover a non-exclusive inclusion. For example, a process,method, article, or apparatus that comprises a list of elements is notnecessarily limited to only those elements but may include otherelements not expressly listed or inherent to such process, method,article, or apparatus. Further, unless expressly stated to the contrary,“or” refers to an inclusive or and not to an exclusive or. For example,a condition A or B is satisfied by any one of the following: A is true(or present) and B is false (or not present), A is false (or notpresent) and B is true (or present), and both A and B are true (orpresent).

In addition, use of the “a” or “an” are employed to describe elementsand components of the embodiments herein. This is done merely forconvenience and to give a general sense of the description. Thisdescription, and the claims that follow, should be read to include oneor at least one and the singular also includes the plural unless it isobvious that it is meant otherwise.

This detailed description is to be construed as exemplary only and doesnot describe every possible embodiment, as describing every possibleembodiment would be impractical, if not impossible. One could implementnumerous alternate embodiments, using either current technology ortechnology developed after the filing date of this application.

What is claimed is:
 1. A computer-implemented method for generating andadjusting retirement plans for a client, comprising: receiving, at oneor more processors, client information, including information related toa plurality of parameters for projecting future values associated withthe retirement plans; determining, by one or more processors, a firstretirement plan based upon the received client information; presenting,by a display, information regarding the first retirement plan to a userin a first portion of a display window; presenting, by the display, aplurality of options to change at least a portion of the plurality ofparameters in a second portion of the display window, wherein theplurality of options are displayed to the user simultaneously with theinformation regarding the first retirement plan and wherein theplurality of options includes (i) a stress test option associated with achange to at least one of the plurality of parameters in one or morefuture time periods to simulate one or more market events associatedwith at least one asset, and (ii) one or more options to adjust thetiming of occurrence of the one or more market events; receiving, by oneor more processors, an indication of a parameter change, wherein theparameter change includes a selection of at least one of the pluralityof options to change at least a portion of the plurality of parameters,wherein the selection indicates at least one of the one or more marketevents associated with the stress test option; determining, by one ormore processors in real-time in response to receiving the indication ofthe parameter change, a second retirement plan based upon the clientinformation and the indication of the parameter change, includingsimulating the indicated at least one of the one or more market eventsby changing the at least one of the plurality of parameters in the oneor more future time periods; and presenting, by the display, informationregarding the second retirement plan to the user simultaneously with asecond plurality of options to change at least a portion of theplurality of parameters in the first portion of the display window byreplacing at least a portion of the information regarding the firstretirement plan.
 2. The computer-implemented method of claim 1, whereineach of the information regarding the first retirement plan and theinformation regarding the second retirement plan include a projection ofat least one of the following: retirement income from one or moresources during retirement, expenses during retirement, retirement age,rate of return on investments, rate of return on other assets, length ofclient life, healthcare expenses, recurring expenses, nonrecurringexpenses.
 3. The computer-implemented method of claim 1, wherein theclient information includes a first item of client information and asecond item of client information, and wherein the second item isprepopulated with a default value based at least in part upon thereceived value of the first item.
 4. The computer-implemented method ofclaim 1, wherein determining the second retirement plan includesdetermining, by a processor of a computing device operated by the user,the second retirement plan without receiving additional information fromany additional computing devices communicatively connected to thecomputing device after receiving the indication of the parameter change.5. The computer-implemented method of claim 1, wherein the one or moremarket events include one or more of the following: a single-yearreduction in a rate of return on the at least one asset, a multi-yearreduction in the rate of return on the at least one asset, a single-yearreduction in a value of the at least one asset, a multi-year reductionin the value of the at least one asset, or a multi-year series ofchanges to the rate of return that includes at least one increase in thevalue of the at least one asset and at least one decrease in the valueof the at least one asset.
 6. The computer-implemented method of claim1, wherein receiving the indication of the parameter change comprisesreceiving a selection of a reallocation option to reallocate part or allof at least one asset of the assets of the client to a different type ofasset in the second retirement plan.
 7. The computer-implemented methodof claim 6, wherein: receiving the selection of the reallocation optionincludes receiving a selection to reallocate part or all of the at leastone asset of the client to an annuity; the computer-implemented methodfurther comprises: transmitting, via a network, a request for one ormore quotes for the annuity to one or more parties, and receiving, viathe network, one or more quotes from the one or more parties; and thesecond retirement plan is determined based at least in part upon thereceived one or more quotes from the one or more parties.
 8. Thecomputer-implemented method of claim 1, wherein the plurality of optionsto change at least a portion of the plurality of parameters includes adrawdown option, wherein selection of the drawdown option causes thesecond retirement plan to include a sufficient withdrawal of an asset ineach period following the client's retirement to meet the client'sretirement income goals in each of one or more periods following theclient's retirement until the asset is depleted.
 9. Thecomputer-implemented method of claim 1, wherein the plurality of optionsto change at least a portion of the plurality of parameters includes atleast one optimization option associated with one or more of theplurality of parameters, wherein selection of the optimization optioncauses an adjustment to the associated one or more parameters in thesecond retirement plan such that the difference between the client'sretirement income goal and projected retirement income is minimized. 10.The computer-implemented method of claim 1, wherein presenting the firstretirement plan to the user and presenting the second retirement plan tothe user each include presenting a presentation option to the user, andfurther comprising: receiving, by one or more processors, a selection ofthe presentation option; determining, by one or more processors, atleast one slide based upon a retirement plan associated with theselected presentation option; and generating, by one or more processors,a slide presentation include the one or more determined slides.
 11. Acomputer system for generating and adjusting retirement plans for aclient, comprising: one or more processors; a non-transitory programmemory storing executable instructions that when executed by the one ormore processors cause the computer system to: receive clientinformation, including information related to a plurality of parametersfor projecting future values associated with the retirement plans;determine a first retirement plan based upon the received clientinformation; present information regarding the first retirement plan toa user in a first portion of a display window; present a plurality ofoptions to change at least a portion of the plurality of parameters in asecond portion of the display window, wherein the plurality of optionsare displayed to the user simultaneously with the information regardingthe first retirement plan and wherein the plurality of options includes(i) a stress test option associated with a change to at least one of theplurality of parameters in one or more future time periods to simulateone or more market events associated with at least one asset, and (ii)one or more options to adjust the timing of occurrence of the one ormore market events; receive an indication of a parameter change, whereinthe parameter change includes a selection of at least one of theplurality of options to change at least a portion of the plurality ofparameters, wherein the selection indicates at least one of the one ormore market events associated with the stress test option; determine, inreal-time in response to receiving the indication of the parameterchange, a second retirement plan based upon the client information andthe indication of the parameter change, including simulating theindicated at least one of the one or more market events by changing theat least one of the plurality of parameters in the one or more futuretime periods; and present information regarding the second retirementplan to the user simultaneously with a second plurality of options tochange at least a portion of the plurality of parameters in the firstportion of the display window by replacing at least a portion of theinformation regarding the first retirement plan.
 12. The computer systemof claim 11, wherein the client information includes a first item ofclient information and a second item of client information, and whereinthe second item is prepopulated with a default value based at least inpart upon the received value of the first item.
 13. The computer systemof claim 11, wherein: the one or more processors are disposed within acomputing device operated by the user; and the executable instructionsthat when executed by the one or more processors cause the computersystem to determine the second retirement plan further cause thecomputing device to determine the second retirement plan withoutreceiving additional information from any additional computing devicescommunicatively connected to the computing device after receiving theindication of the parameter change.
 14. The computer system of claim 11,wherein the one or more market events include one or more of thefollowing: a single-year reduction in a rate of return on the at leastone asset, a multi-year reduction in the rate of return on the at leastone asset, a single-year reduction in a value of the at least one asset,a multi-year reduction in the value of the at least one asset, or amulti-year series of changes to the rate of return that includes atleast one increase in the value of the at least one asset and at leastone decrease in the value of the at least one asset.
 15. The computersystem of claim 11, wherein: the indication of the parameter changeincludes a reallocation option to reallocate part or all of at least oneasset of the assets of the client to an annuity in the second retirementplan; the computer system further comprises one or more serverscommunicatively connected to the one or more processors through anetwork; the executable instructions further comprise executableinstructions that when executed by the one or more processors cause thecomputer system to transmit to the one or more servers a request for oneor more quotes for the annuity and receive from the one or more serversone or more quotes; and the second retirement plan is determined basedat least in part upon the received one or more quotes.
 16. A tangible,non-transitory computer-readable medium storing executable instructionsfor generating and adjusting retirement plans for a client, whichexecutable instructions, when executed by one or more processors of acomputer system, cause the computer system to: receive clientinformation, including information related to a plurality of parametersfor projecting future values associated with the retirement plans;determine a first retirement plan based upon the received clientinformation; present information regarding the first retirement plan toa user in a first portion of a display window; present a plurality ofoptions to change at least a portion of the plurality of parameters in asecond portion of the display window, wherein the plurality of optionsare displayed to the user simultaneously with the information regardingthe first retirement plan and wherein the plurality of options includes(i) a stress test option associated with a change to at least one of theplurality of parameters in one or more future time periods to simulateone or more market events associated with at least one asset, and (ii)one or more options to adjust the timing of occurrence of the one ormore market events; receive an indication of a parameter change, whereinthe parameter change includes a selection of at least one of theplurality of options to change at least a portion of the plurality ofparameters, wherein the selection indicates at least one of the one ormore market events associated with the stress test option; determine, inreal-time in response to receiving the indication of the parameterchange, a second retirement plan based upon the client information andthe indication of the parameter change, including simulating theindicated at least one of the one or more market events by changing theat least one of the plurality of parameters in the one or more futuretime periods; and present information regarding the second retirementplan to the user simultaneously with a second plurality of options tochange at least a portion of the plurality of parameters in the firstportion of the display window by replacing at least a portion of theinformation regarding the first retirement plan.
 17. The tangible,non-transitory computer-readable medium of claim 16, wherein the clientinformation includes a first item of client information and a seconditem of client information, and wherein the second item is prepopulatedwith a default value based at least in part upon the received value ofthe first item.
 18. The tangible, non-transitory computer-readablemedium of claim 16, wherein the executable instructions cause thecomputer system to determine the second retirement plan further causethe computer system to determine the second retirement plan withoutrequesting additional information from any additional computing devicescommunicatively connected to the computer system after receiving theindication of the parameter change.
 19. The tangible, non-transitorycomputer-readable medium of claim 16, wherein the one or more marketevents include one or more of the following: a single-year reduction ina rate of return on the at least one asset, a multi-year reduction inthe rate of return on the at least one asset, a single-year reduction ina value of the at least one asset, a multi-year reduction in the valueof the at least one asset, or a multi-year series of changes to the rateof return that includes at least one increase in the value of the atleast one asset and at least one decrease in the value of the at leastone asset.
 20. The tangible, non-transitory computer-readable medium ofclaim 16, wherein: the indication of the parameter change includes areallocation option to reallocate part or all of at least one asset ofthe assets of the client to an annuity in the second retirement plan;the executable instructions further cause the computer system totransmit a request for one or more quotes for the annuity to one or moreparties, and receive one or more quotes from the one or more parties;and the second retirement plan is determined based at least in part uponthe received one or more quotes from the one or more parties.